/**
 * 给两个整点，要求再求出一个整点，使得构造出一个面积为正整数的三角形
 * 整点三角形的面积必然是.5或者整数
 * 所以对A点，只需要构造(xA + 1, yA)即可，如果这个点的面积是0.5，
 * 则(xA + 2, yA)必然满足条件
 * 还有一种可能就是(xA + 1, yA)可能刚好三点共线，
 * 此时只要尝试(xA, yA + 1)即可
 */
#include <bits/stdc++.h>
using namespace std;

struct Point{
    using value_t = long long;

    value_t x, y;
    Point(value_t a=0,value_t b=0):x(a),y(b){}
    void input(){
        cin >> x >> y;
    }
};

Point::value_t cross(const Point & O, const Point & A, const Point & B){
    auto xoa = A.x - O.x;
    auto xob = B.x - O.x;
    auto yoa = A.y - O.y;
    auto yob = B.y - O.y;
    return xoa * yob - xob * yoa;
}

Point A, B;
Point C;

void work(){
    A.input(); B.input();
    C.x = A.x + 1, C.y = A.y;
    auto tmp = cross(A, B, C);
    if(tmp & 1){
        C.x += 1;
    }else{
        if(0 == tmp){
            C.x = A.x, C.y = A.y + 1;
            auto t2 = cross(A, B, C);
            assert(t2);
            if(t2 & 1){
                C.y += 1;
            }
        }
    }
    cout << C.x << " " << C.y << endl;
    return;
}

int main(){
#ifndef ONLINE_JUDGE
    freopen("z.txt", "r", stdin);
#endif
    ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);	
    int nofkase = 1;
    while(nofkase--) work();
	return 0;
}